Tengo una estructura como esta, con archivos js que he incluido con el paquete web. (todo simplificado para facilitar la lectura)
home.html main.bundle.jsinicio.html
<html> <head> <script type="module" src="main.bundle.js"></script> </head> <body> </body> </html>dentro del src js se vería así
src.js
import {some-imports} from this.js window.addEventListner("load", ()=>{ # page load code for ALL pages }) function init_home(){ #home page init code } function init_contact(){ #contact page init code } export {init_home, init_contact}¿Cuál es la forma preferida de llamar a estas funciones de inicio en cada página?
He atado agregando esta etiqueta de script en la parte inferior de cada página sin suerte
<script type="module"> import {init_home} from './static/deploy/main.bundle.js' init_home() </script>Sigo recibiendo errores como este.
The requested module './static/deploy/main.bundle.js' does not provide an export named 'init_home'¿También es correcto que estoy tratando de importar el mismo archivo js dos veces?
webpack.config.js (por si acaso)
const { CleanWebpackPlugin } = require('clean-webpack-plugin'); const path = require('path'); module.exports = { plugins: [ new CleanWebpackPlugin() ], entry: { main: path.resolve(__dirname, './js/fire.js'), }, output: { filename: '[name].bundle.js', path: path.resolve(__dirname, 'deploy') }, module: { rules: [ { test: /\.js$/, exclude: /node_modules/, use: { loader: 'babel-loader', options: { presets: ['@babel/preset-env'] } } }, ] }, }